Можно показывать курсор из отдельного файла. Для этого в классе Cursor есть конструктор:
public Cursor(string fileName);
Достаточно передать имя файла. Смотрим пример.
// DotNet CSharp Sample code
using System;
using System.Windows.Forms;
using System.Drawing;
class MainForm : Form
{
public MainForm()
{
Text = "This is my form";
}
protected override void OnMouseDown(MouseEventArgs e)
{
Cursor.Current = new Cursor("D:\\net_step\\6\\NO.CUR");
}
public static void Main(string[] args)
{
Application.Run(new MainForm());
}
}
В момент нажатия кнопки курсор покажется, отпустите пропадет.